package edu.ynu.se.xiecheng.achitectureclass.common.dao;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

/**
 * 图片数据 DAO 类，用于操作图片相关的数据库操作
 *
 * **设计模式：**
 * - **DAO 模式 (Data Access Object Pattern)**：封装图片数据的数据库访问逻辑。
 *
 * **设计原则：**
 * - **单一职责原则 (SRP)**：类的职责仅限于图片数据的持久化操作。
 */
@Repository
public class ImageDataDao {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    /**
     * 将图片 URL 保存到数据库
     *
     * @param picUrl 图片的 URL
     */
    public void savePicUrlToDatabase(String picUrl) {
        String sql = "INSERT INTO camera_snapshot (photo_path, device_id, capture_time, create_time, update_time) " +
                "VALUES (?, 'AB9831171', NOW(), NOW(), NOW())";

        try {
            jdbcTemplate.update(sql, picUrl);
            System.out.println("Picture URL saved to database: " + picUrl);
        } catch (Exception e) {
            throw new RuntimeException("Failed to save picture URL to database: " + e.getMessage(), e);
        }
    }
}
